Instalación de NASLite v1 (en VMWare Player sobre Ubuntu)

Motivación

Hace tiempo, trabajando en las instalaciones de un cliente, se nos presentó el problema de habilitar un espacio común para compartir una serie de ficheros entre los miembros del equipo. La solución habitual en estas situaciones, es colocar todos los ficheros en un equipo y compartir la carpeta. Aunque es la solución sencilla, los problemas típicos asociados con esto son que el usuario del equipo se marche apagando el ordenador, o que esté trabajando y que el acceso remoto de varias personas descargando grandes ficheros le ralentice el equipo hasta que no pueda trabajar... Y eso cuando el disco no se llena, que también pasa...

La solución ideal sería un equipo dedicado, un NAS. Pero plantearle la compra/cesión al cliente de un equipo para esto tampoco tenía demasiada justificación... Así que la solución pasó por el reciclaje.

La empresa en cuestión donaba los equipos viejos reemplazados a organizaciones sin ánimo de lucro, de manera que nos pusimos en contacto con el enlace en la empresa con las ONGs y solicitamos el "préstamo" de un equipo.

Las especificaciones del equipo no eran nada espectaculares, de manera que quedaba descartada la instalación de una imagen del sistema (con Windows XP, si no recuerdo mal) para compartir la(s) carpeta(s) con los ficheros.

Así que tuvimos que buscar otras opciones.

Teníamos las siguientes limitaciones:
  • Debía ser funcional en un equipo limitado en cuanto a potencia de HW.
  • Debía ser open source o gratuito, en su defecto.
  • Debía ser fácil de instalar y configurar inicialmente, y tener un mantenimiento cercano a cero (al fin y al cabo, a nosotros nos pagaban por otra cosa, y no por encargarnos de este equipo)

Valorando las opciones

La primera opción que valoramos fue la utilización de un LiveCD. Un LiveCD se ejecuta completamente en la memoria RAM del equipo, pero nuestro ordenador estaba bastante limitado en ese sentido. Además, toda la configuración se perdería -y debería realizarse de nuevo- en caso de que el ordenador de apagara por algún motivo.

Otra posibilidad sería remasterizar un LiveCD o crear uno con nuestra configuración, pero ahí teníamos la limitación de nuestros escasos conocimientos de Linux (y el poco tiempo que podíamos dedicar a este proyecto).

No recuerdo porqué no utilizamos FreeNAS, aunque hoy en día es una de las mejores opciones en la mayoría de casos...

Finalmente, encontramos una solución perfecta: un sistema live exclusivamente dedicado a convertir un equipo en un NAS, que en vez de ejecutarse desde un CD lo hace desde un diskette! (en aquella época no abundaban los pendrives o eran muy caros, y además los equipos viejos no tienen la posibilidad de arrancar desde USB...)

El sistema en cuestión es NASLite v1 y ha sido desarrollado por Server Elements. (A través de la página de NASLite en la Wikipedia, veo que la licencia de la rama 1.x es GPL.)

Una de las limitaciones de la versión gratuita de NASLite es que no es posible acceder a los ficheros almacenados en el NAS a través de diferentes métodos simultáneamente (SMB/CIFS, FTP, NFS, etc...), debiendo instalar una versión específica para cada uno. El sistema también está limitado en cuanto a los tipos de tarjetas de red soportadas, debiendo elegir entre la versión con soporte para Gigabit o la estándard de 10/100Mbps.

En nuestro caso esto no suponía un problema, ya que el acceso iba a ser mediante SMB/CIFS únicamente (o bien mediante HTTP , que soportan todas las versiones), y nuestro equipo tenía una tarjeta de red normalita (nada de gigabit en aquella época...)

Instalación

El primer paso es obtener la copia del sistema desde ServerElements o a través de los enlaces que aparecen en la Wikipedia. En nuestro caso, NASLite-SMB

El primer problema era meter la imagen en un diskette. Es necesario formatear el diskette con una capacidad de 1.72MB, cuando lo normal es 1.44MB.

Como no sabíamos cómo hacer esto desde Windows, y las instrucciones de Server Elements son linux only, arrancamos uno de nuestros equipos con un LiveCD y formateamos el diskette desde linux ;)
gunzip NASLite.img.gz
fdformat /dev/fd0u1722
dd if=NASLite.img of=/dev/fd0u1722
Una vez que hemos conseguido meter el sistema en el diskette, ya hemos superado la parte más difícil de la instalación!!

A partir de aquí, todo es sencillo.

Primero, insertamos el diskette y nos aseguramos de que el equipo arranque desde él. Ésto era lo habitual en los equipos de aquella época, así que no supuso un problema.

El equipo arranca y detecta los discos. De hecho, el sistema permite saltarse las limitaciones de la BIOS, lo que es importante cuando mezclas equipos muy viejos con discos MUY grandes. En nuestro caso, los discos eran reutilizados, así que no eran muy grandes, y en el ejemplo utilizo discos virtuales de 4.7GB...

Una vez el sistema ha arrancado, se presenta la pantalla de login. El usuario y password por defecto es admin / nas.
Y una vez entramos, nos encontramos con la pantalla de configuración.

Como véis, no tiene misterio, y además las diferentes opciones se nos presentan en orden.

Empezamos configurando la red (opción 1). Introducimos la IP para el equipo y la máscara de red. En el ejemplo, 192.168.1.101 255.255.255.0.
Se nos informa de que los cambios han sido introducidos correctamente, pero que debemos grabar la configuración. Correcto; pulsamos enter para volver al menú principal (grabaremos la configuración al final, una vez hayamos acabado).

Podemos cambiar el nombre del equipo y el grupo de trabajo. Como nuesto equipo no iba a darse de alta en el DNS ni formaría parte del dominio, decidimos dejarlo por defecto. Nos saltamos los pasos (2) y (3).

(4) Configuración de los discos
Esta es la segunda opción más importante, después de la configuración de la red.
La pantalla nos informa de que el sistema puede contar con hasta 4 discos, y nos indica cómo el sistema los designa en función de en qué cable -y cómo- están conectados. También nos informa que el sistema borrará el disco, con lo que perderemos toda la información que se encuentre en él.

Los discos eran reciclados, de manera que ya habíamos realizado un formateo previo para eliminar la información de su antiguo usuario. En el caso actual, son discos virtuales sin formatear.

Si confirmamos que queremos continuar, pulsamos "y".
Repetimos el proceso con todos los discos.

Si, como en nuestro ejemplo con la máquina virtual, seleccionamos un número de disco que no se corresponde con un disco conectado a la máquina (es decir, no hay disco donde le pedimos que busque), se muestra el siguiente mensaje:
Una vez formateados/configurados todos los discos, ya tenemos nuestro servidor NAS prácticamente listo.

Como buena práctica, debemos cambiar el password de acceso al sistema (mediante la opción (5)), y -opcionalmente-, poner el reloj del sismtema en hora (6).

Antes de reiniciar, es importante que grabemos la configuración del sistema. Para ello, pulsamos (9).
Después de grabar la configuración, debemos reiniciar el sistema -opción (7)- para que podamos disponer de los discos ya configurados.

A partir de este momento, el nuevo servidor NAS ya estaba listo para trabajar. Toda la configuración/administración posterior podía realizarse de forma remota, así que desconectamos teclado, pantalla y ratón y lo dejamos funcionando.

Accediendo a los discos del NAS

En Windows podemos acceder a los discos del NAS mediante la opción de Conectar a unidad de red o bien mediante \\192.168.1.101\Disk-# desde Inicio - Ejecutar, por ejemplo.

En Ubuntu es igual de fácil: Lugares - Conectar con el servidor...
A partir de este momento, puedes arrastrar y soltar los ficheros de o desde el servidor como si fuera una carpeta local, lo que permite subir ficheros al NAS.
Si únicamente queremos descargarlos, podemos acceder a los discos a través del navegador: http://192.168.1.101/Disk-#, donde # es el número de disco (de 1 a 4).

Podemos obtener información del estado del servidor a través del navegador, a través de la url http://192.168.1.101/Info/Server.htm
Esta página es una especie de Panel de control desde donde podemos observar el estado del servidor, de los discos, etc... Es destacable observar que, en reposo (es decir, no hay transferencias de archivos, todo el sistema consume únicamente menos de 12MB de RAM (Firefox, él solito, consume 28MB)

Limitaciones

Una de las ventajas de NASLite es que no necesita configuración de permisos de acceso de usuarios ni nada por el estilo. Pero esto también supone una limitación si queremos hacer que determinados ficheros sean accesible a unos usuarios concretos...

Tampoco existe la posibilidad de juntar varios discos en uno para formar RAIDs (FreeNAS sí puede hacerlo)

Hay otras limitaciones, como no poder cambiar el nombre a los discos... Pero como solución robusta y sencilla para reutilizar un equipo limitado, la verdad es que fue una solución perfecta.

¿Porqué este tutorial?


Como habéis podido observar, NASLite 1.x es una opción algo rebuscada para montar un NAS open source. Hay otras opciones, sin duda, como FreeNAS. Pero NASLite era lo que necesitábamos en aquel momento, y lo que podíamos montar en aquel equipo.

De eso, hace muchos años... Pero resulta que el otro día cayó en mis manos un equipo viejo, un Pentium II a 350MHz y estuve pensando en darle alguna utilidad... Y hoy, por casualidad, revisando un disco duro externo, he encontrado las imágenes de diskette de NASLite.

En un ataque de nostalgia, lo he montado en una máquina virtual, y después de trastear un poco con él, he pensado en escribir esta pequeña guía a modo de homenaje a esta mini-distribución de linux.

El Pentium II lo devolveré a su antiguo dueño y -probablemente- acabará sus días como alforja de una mula o similar.

Pero siempre nos quedará NASLite para dar alas a equipos deshauciados!

Comentarios